package com.vast.admin.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.vast.system.entity.SuperEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.math.BigDecimal;
import lombok.Data;

@ApiModel(value="com.vast.admin.entity.DealRecord")
@Data
@TableName(value = "deal_record")
public class DealRecord extends SuperEntity implements Serializable {

    /**
     * 类型
     */
    @TableField(value = "type")
    @ApiModelProperty(value="类型")
    private Integer type;

    /**
     * 状态 1-正常 0- 禁用
     */
    @TableField(value = "status")
    @ApiModelProperty(value="状态 1-正常 0- 禁用")
    private Integer status;

    /**
     * 备注
     */
    @TableField(value = "remark")
    @ApiModelProperty(value="备注")
    private String remark;

    /**
     * 账户id
     */
    @TableField(value = "account_id")
    @ApiModelProperty(value="账户id")
    private Long accountId;

    /**
     * 充值支付类型 1 - 支付宝, 2-微信, 3.现金, 4其它
     */
    @TableField(value = "payment_type")
    @ApiModelProperty(value="充值支付类型 1 - 支付宝, 2-微信, 3.现金, 4其它 6退款")
    private Integer paymentType;

    /**
     * 充值前原始金额
     */
    @TableField(value = "original_amount")
    @ApiModelProperty(value="充值前原始金额")
    private BigDecimal originalAmount;

    /**
     * 充值金额
     */
    @TableField(value = "recharge_amount")
    @ApiModelProperty(value="充值金额")
    private BigDecimal rechargeAmount;

    /**
     * 额外金额(如充值赠送)
     */
    @TableField(value = "extra_amount")
    @ApiModelProperty(value="额外金额(如充值赠送)")
    private BigDecimal extraAmount;

    /**
     * 操作 1- 充值 2 消费
     */
    @TableField(value = "operation")
    @ApiModelProperty(value="操作 1- 充值 2 消费")
    private Integer operation;

    /**
     * 金额
     */
    @TableField(value = "money")
    @ApiModelProperty(value="金额")
    private BigDecimal money;

    /**
     * 公司名称
     */
    @TableField(exist = false)
    @ApiModelProperty(value="公司名称")
    private String companyName;
    /**
     * 法定代表人
     */
    @TableField(exist = false)
    @ApiModelProperty(value="法定代表人")
    private String legalPerson;

    /**
     * 联系方式
     */
    @TableField(exist = false)
    @ApiModelProperty(value="联系方式")
    private String contactMobile;

    @TableField(value = "contract_name")
    @ApiModelProperty(value="合同名称")
    private String contractName;

    private static final long serialVersionUID = 1L;

    public static final String COL_ACCOUNT_ID = "account_id";

    public static final String COL_PAYMENT_TYPE = "payment_type";

    public static final String COL_ORIGINAL_AMOUNT = "original_amount";

    public static final String COL_RECHARGE_AMOUNT = "recharge_amount";

    public static final String COL_EXTRA_AMOUNT = "extra_amount";

    public static final String COL_CONTRACT_NAME = "contract_name";

    public static final String COL_OPERATION = "operation";
}